//
//  HHFullAlphaAnimator.h
//  Pod
//
//  Created by Basic on 2017/3/23.
//  Copyright © 2017年 green. All rights reserved.
//  满屏VC 透明度 转场动画 实现

#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>

@class HHFullAlphaAnimator;
@protocol HHFullAlphaAnimatorFromDelegate <NSObject>
@optional

/**
 转场动画过程中，from vc 截图

 @param animator animator description
 @return return value description
 */
- (UIImage *)HHFullAlphaAnimatorFromGetShotImg:(HHFullAlphaAnimator *)animator;
@end

@protocol HHFullAlphaAnimatorToDelegate <NSObject>
@optional

/**
 转场动画过程中，from vc 的截图完成（作为to page的背景图）

 @param animator animator description
 @param shotImg shotImg description
 */
- (void)HHFullAlphaAnimatorTo:(HHFullAlphaAnimator *)animator didShotImg:(UIImage *)shotImg;

/**
 转场动画 will present
 
 @param animator animator description
 */
- (void )HHFullAlphaAnimatorToWillPresent:(HHFullAlphaAnimator *)animator;
/**
 转场动画 present ing

 @param animator animator description
 */
- (void )HHFullAlphaAnimatorToPresenting:(HHFullAlphaAnimator *)animator;

/**
 转场动画 will dismiss
 
 @param animator animator description
 */
- (void )HHFullAlphaAnimatorToWillDismiss:(HHFullAlphaAnimator *)animator;
/**
 转场动画 dismiss ing
 
 @param animator animator description
 */
- (void )HHFullAlphaAnimatorToDismissing:(HHFullAlphaAnimator *)animator;



/**
 转场动画过程完成
 
 @param animator animator description
 */
- (void )HHFullAlphaAnimatorToCompletion:(HHFullAlphaAnimator *)animator;
@end

@interface HHFullAlphaAnimator : NSObject <UIViewControllerTransitioningDelegate, UIViewControllerAnimatedTransitioning>
@property (weak, nonatomic) id<HHFullAlphaAnimatorFromDelegate>      fromDelegate;
@property (weak, nonatomic) id<HHFullAlphaAnimatorToDelegate>        toDelegate;
@end
